﻿using System.Collections.Generic;
using System.Windows.Input;

namespace ClientOverflow.ViewModels.Interfaces
{
    /// <summary>
    /// Interface used to declare the contract of detailed question view model. This interface is instantiated by
    /// the QuestionViewViewModel class.
    /// </summary>
    public interface IQuestionViewViewModel
    {
        string Title { get; }
        string Content { get; }
        INewAnswerViewModel NewAnswer { get; }
        ICommand PostNewAnswerCommand { get; }

        ICommand VoteUpCommand { get; }
        ICommand VoteDownCommand { get; }
        IList<IQuestionAnswerViewModel> Answers { get; }
        int Votes { get; }
    }
}